import request from '@/config/axios'

// ERP基础资料-生产工艺 VO
export interface BaseProcessNameVO {
  id: string // id
  processNumber: string // 工艺编号
  processName: string // 工艺名称
  processUnit: string // 工艺单位
  productionType: string // 产品
  remark: string // 备注
  isOutsource: boolean // 是否外协
  outsourceMaterialSpec: string // 外协用料规格
  productionQuantityCalculateType: string // 生产数计算方式
  defaultMaterialNo: string // 默认用料序号
  subject: string // 科目
  mesManualComplete: boolean // MES必需手动结单
  semiProductStorage: boolean // 默认半成品入库
  loadDesignDocuments: boolean // MES加载设计文件
  processType: string // 工艺类别
  status: string // 工艺状态
  mesNoFileAlert: boolean // MES上机文件不存在时提示
  isSeparateOrder: boolean // 是否分单
  defaultUnitPrice: number // 默认基础单价
  uploadFile: boolean // 上传文件
  separateOrderScheduing: boolean // 是否按分单排产
}

// ERP基础资料-生产工艺 API
export const BaseProcessNameApi = {
  // 查询ERP基础资料-生产工艺分页
  getBaseProcessNamePage: async (params: any) => {
    return await request.get({ url: `/erp/base-process-name/page`, params })
  },

  // 查询ERP基础资料-生产工艺详情
  getBaseProcessName: async (id: number) => {
    return await request.get({ url: `/erp/base-process-name/get?id=` + id })
  },

  // 新增ERP基础资料-生产工艺
  createBaseProcessName: async (data: BaseProcessNameVO) => {
    return await request.post({ url: `/erp/base-process-name/create`, data })
  },

  // 修改ERP基础资料-生产工艺
  updateBaseProcessName: async (data: BaseProcessNameVO) => {
    return await request.put({ url: `/erp/base-process-name/update`, data })
  },

  // 删除ERP基础资料-生产工艺
  deleteBaseProcessName: async (id: number) => {
    return await request.delete({ url: `/erp/base-process-name/delete?id=` + id })
  },

  // 导出ERP基础资料-生产工艺 Excel
  exportBaseProcessName: async (params) => {
    return await request.download({ url: `/erp/base-process-name/export-excel`, params })
  },

// ==================== 子表（ERP基础资料-生产工艺备注） ====================

  // 获得ERP基础资料-生产工艺备注列表
  getBaseProcessNameRemarkListByProcessId: async (processId) => {
    return await request.get({ url: `/erp/base-process-name/base-process-name-remark/list-by-process-id?processId=` + processId })
  }
}
